package com.eagledata.project.weixin.utils;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import com.alibaba.fastjson.JSONObject;
import com.eagledata.common.utils.HttpsUtils;

@Component
public class WeiXinToken {
	
	/**
	 *
	 * @Description		:  每间隔1小时58分钟获取一次全局access_token
	 * @author    		:  XueMeng
	 * @date      		:  2018年6月27日 下午4:26:19
	 * @return    		:  void
	 * @参数说明	  		:  
	 *
	 */
	@Scheduled(fixedRate=2 * 59 * 60000)
    public void getAccessToken() {    
    	String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + WeiXinParam.APPID + "&secret=" + WeiXinParam.APPSECRET;
    	String result = HttpsUtils.doGetByHttps(url);
    	JSONObject jo = JSONObject.parseObject(result);    	
    	WeiXinParam.access_token = jo.getString("access_token");
    	getJsapiTicket();
    }
	
	/**
	 *
	 * @Description		:  获取到需要授权接口的jsapi_ticket用于授权页面使用
	 * @author    		:  XueMeng
	 * @date      		:  2018年6月27日 下午4:14:35
	 * @return    		:  void
	 * @参数说明	  		:  
	 *
	 */
	public void getJsapiTicket() {
		String url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + WeiXinParam.access_token + "&type=jsapi";
    	String result = HttpsUtils.doGetByHttps(url);
    	JSONObject jo = JSONObject.parseObject(result);
    	String url_jsapi_ticket = jo.getString("ticket");
    	WeiXinParam.jsapi_ticket = url_jsapi_ticket;
	}

}
